书接上文我们来继续探讨ATE DFT 常见测试项目LogicBist(Lbist) 和MemoryBist(Mbist) 测试。一、Lbist (Logic BIST) 依赖于芯片内部的伪随机向量生成器 (PRPG/LFSR)生成伪随机序列,利用多输入特征寄存器 (MISR/SISR)捕获被测逻辑对测试向量的响应,并将其压缩成一个最终特征值 ,最后通过BIST 控制器 (FSM), 控制测试启动、运行、停止和签名比较。LogicBist Pattern的检测范围主要是组合逻辑和时序逻辑的固定故障、路径延迟,但覆盖率和Pattern设计约束强相关。 · 检测范围: a. 主要目标: 检测随机逻辑中的固定型故障 (Stuck-At Faults) 为主 b. 可扩展检测: o 过渡故障 (Transition Faults): 通过调整时钟速度 (At-Speed Testing) o 路径延迟故障 (Path Delay Faults): 需要特定LBIST结构和向量控制 o 部分桥接故障 (Bridging Faults): 依赖于随机向量的激活概率 a. 覆盖范围: o 依赖于PRPG的随机性、测试向量长度和MISR的压缩效率 o 通常能达到85%-98%的固定型故障覆盖率,但难以达到100% o 对非逻辑故障 (如模拟电路、I/O Pad、时钟PLL本身、电源完整性) 不直接检测 o 覆盖盲点: 逻辑初始化状态、某些控制逻辑、与BIST结构无关的异步路径、X-传播问题掩盖的故障 · 常见失效模型: 签名不匹配 (Signature Mismatch): 最常见,常表现为:被测逻辑响应与预期不符。 BIST启动失败 (BIST_DONE 永不拉高): BIST控制器或关键路径故障 超时失败 (Timeout): 测试未在预期时间内完成,可能原因:时钟问题或控制器卡死 间歇性/电压/温度敏感失效: 通常在特定V/T条件下出现签名错误,常表现为:时序问题 (Hold/Setup Violation, Crosstalk, IR Drop) 多芯片签名一致但错误 (Systematic Failure): 设计缺陷、约束错误、X-传播问题 · ATE 调试步骤及技巧: a. 测试环境校验 ①确认同DUT的Scan DC测试项(Stuck-At/IDDQ)Pass/Fail情况②检查ATE电源纹波(<50mV)、时钟抖动(<100ps)、BIST_RUN信号时序 a. 测试参数Relax ①逐步放宽 Test Period(如从100MHz→80MHz)②调节 程序电源电压设定 (±10%)观察Fail Pattern/channel 输出波形变化③Relax level 中VIL/VIH, VOL/VOH 电平(VIL=0*VDD,VIH=1*VDD,VOL=VOH=1/2*VDD)排除I/O接口边际问题b. 关键信号监控 ①抓取 BIST_DONE 信号,时序波形,确认跳变沿位置是否符合预期②抓取Fail DUT 波形,与Pass DUT 波形比对③修改test clock duty cycle setting,排除因时钟skew导致的Failc. 专项排查手段(寻求DFT部门同事帮助)①使能 X-Tolerant MISR模式 排除未初始化寄存器干扰②注入 PRPG自定义种子(Seed)验证向量生成正确性③修改 TAP FSM等待周期 规避时钟偏斜风险d. 环境敏感性测试 ①对比高/常/低温下pattern失效规律②绘制 电压-频率 Shmoo图 定位时序边界二、Mbist (Memory BIST)针对每个内嵌存储器 (SRAM, ROM, Register File) 集成专用的BIST控制器,控制器执行预设的March算法 (如 March C-, March LR),遍历存储器的每个地址单元,执行Write0,Read0(Expect0).Write1,及其变种,检测DUT Memory 中存在的各种故障。检测范围覆盖存储单元、地址解码器、读写控制等。 · 检测范围: § 主要目标: 检测存储器阵列的物理缺陷 o 单元故障 (Cell Faults): Stuck-At-0/1, Stuck-Open o 耦合故障 (Coupling Faults): Inversion, Idempotent, State (CFin, CFid, CFst) o 地址译码器故障 (Address Decoder Faults): 访问冲突、无法访问、地址线SAF o 读写电路故障 (Read/Write Logic Faults): SAF, Delay o 相邻单元干扰 (Neighborhood Pattern Sensitive Faults - NPSF): 依赖于算法复杂度 § 覆盖范围: o 高度依赖于选择的 March 算法。复杂算法 (如 March LR, March SS) 能覆盖更广泛的故障模型 o 优秀的MBIST算法可接近 100% 的单元级故障覆盖率 和很高的地址译码器故障覆盖率 o 对存储单元之外的逻辑(如BIST控制器本身、外围接口逻辑)不直接检测 (需配合Scan或LBIST) o 覆盖盲点: 特定复杂NPSF、某些动态故障 (如数据保留故障需结合休眠模式(Sleep/Hibernate)测试)、位线/字线延迟故障需At-Speed测试 · 常见失效模型: § MBIST_FAIL 信号拉高: 最直接失效。表明某个存储单元或控制逻辑在测试中出错 § 特定地址/数据位失效:读取数据与预期值不符,FAIL_ADDR和 FAIL_DATA 提供FAIL位置信息 (常见的有:单元故障、位线问题) § 地址相关失效: 失败地址有规律性 (如所有偶地址、某个译码器输出对应的地址块),强烈指向地址译码器故障 § 算法特定步骤失效: 在算法的特定读写操作 (如 Read after Write Opposite) 失败 § 多芯片相同位置失效(Systematic):多因芯片设计缺陷、制造工艺系统性偏移、MBIST算法覆盖不足 § 电压/温度敏感失效: 在特定V/T下出现Fail,指示单元稳定性或时序余量不足 · ATE 调试步骤及技巧: § 前置条件确认 ① 校验同DUT MBIST配置寄存器 写入值正确性(算法选择/时钟分频比) ②确认 MBIST_RUN 启动前存储器已完成初始化 § 失效特征提取 ①对失效地址执行 Pin Margin Test(驱动电平/时序扫描) ②保证最佳Pin Margin Setting 后抓取Timing 波形并根据Timing 波形挪动 Drive edge 和Recive edge setting ③抓取Fail Cycle, 读取 FAIL_ADDR十六进制值 → 转换为物理Bank/Row/Col坐标定位Fail 发生的具体信息 ④修改test clock duty cycle setting,排除因时钟skew导致的Fail § 算法分步验证 ①Split MBIST Pattern → 分段执行 Write0/Read0 或 Write1/Read1 子项 ②寻求DFT 部门同事帮助插入 Data Retention间隔(休眠周期)检测电荷泄露 § 电气参数调节 ①执行 Vmin Shmoo:扫描[0.9~1.2]*VDD电压定位存储单元稳定性边界 ②调整 tRC/tWC 时序裕量 → 放宽10%~20%观察失效变化 ③跨温度验证 → 高温加剧单元漏电,低温暴露存取路径延迟 |